Skip to content

docs: add usercron path migration note to upgrade SOP#696

Open
JARVIS-coding-Agent wants to merge 1 commit intoopenabdev:mainfrom
JARVIS-coding-Agent:docs/usercron-migration-note
Open

docs: add usercron path migration note to upgrade SOP#696
JARVIS-coding-Agent wants to merge 1 commit intoopenabdev:mainfrom
JARVIS-coding-Agent:docs/usercron-migration-note

Conversation

@JARVIS-coding-Agent
Copy link
Copy Markdown
Contributor

@JARVIS-coding-Agent JARVIS-coding-Agent commented May 2, 2026

Summary

Add migration note and smoke test check for the usercron path change introduced in v0.8.2.

Changes

  1. Backup section — Added migration note explaining that cronjob.toml path resolution changed from $HOME/ to $HOME/.openab/ in v0.8.2, with the mv command to relocate the file.

  2. Smoke Test section — Added checklist item to verify usercron jobs are loaded after upgrade, with guidance to check the file path if count=0.

Context

Encountered during upgrade from 0.8.2-beta.7 → 0.8.2. The cron scheduler silently started with 0 jobs because cronjob.toml was still at the old $HOME/ location. The scheduler logged no cronjobs yet without warning about the path change, making it easy to miss.

Discord Discussion

https://discord.com/channels/1491295327620169908/1499962945524727988

@github-actions github-actions Bot added pending-screening PR awaiting automated screening closing-soon PR missing Discord Discussion URL — will auto-close in 3 days and removed closing-soon PR missing Discord Discussion URL — will auto-close in 3 days labels May 2, 2026
@shaun-agent
Copy link
Copy Markdown
Contributor

OpenAB PR Screening

This is auto-generated by the OpenAB project-screening flow for context collection and reviewer handoff.
Click 👍 if you find this useful. Human review will be done within 24 hours. We appreciate your support and contribution 🙏

Screening report ## Intent

PR #696 documents a usercron migration issue introduced in v0.8.2: cronjob.toml is now resolved under $HOME/.openab/ instead of $HOME/. Without moving the file, upgraded instances can start the cron scheduler with 0 jobs and only log no cronjobs yet, making scheduled work silently disappear.

Feat

Docs improvement. It adds an upgrade SOP note for relocating cronjob.toml and a smoke-test checklist item to confirm usercron jobs are loaded after upgrade.

Who It Serves

Deployers and agent runtime operators upgrading OpenAB installations, plus maintainers reviewing upgrade safety.

Rewritten Prompt

Update docs/ai-install-upgrade.md to document the v0.8.2 usercron path migration from $HOME/cronjob.toml to $HOME/.openab/cronjob.toml.

Acceptance criteria:

  • Add the migration note in the backup or pre-upgrade section.
  • Include the exact mv command or equivalent safe relocation guidance.
  • Add a post-upgrade smoke-test item confirming usercron jobs are loaded.
  • Mention that count=0 or no cronjobs yet after upgrade may indicate the file is still in the old path.
  • Keep the SOP concise and operational.

Merge Pitch

This is worth advancing because it prevents a real upgrade footgun: scheduled jobs can stop running without an obvious failure. The risk is low because the PR is documentation-only and scoped to the upgrade SOP. The likely reviewer concern is whether docs are sufficient, or whether the runtime should also emit a warning or support backward-compatible migration.

Best-Practice Comparison

OpenClaw principles that fit:

  • Durable job persistence is relevant because cronjob.toml is persisted scheduler state and must survive upgrades.
  • Run logs and warnings are relevant because no cronjobs yet does not clearly identify a path migration problem.
  • Gateway-owned scheduling is conceptually related, but this PR only documents operator procedure rather than changing scheduler ownership.
  • Isolated executions, explicit delivery routing, and retry/backoff are not directly implicated.

Hermes Agent principles that fit:

  • Gateway daemon tick model is relevant only insofar as scheduled jobs must be reliably discovered at daemon startup.
  • Atomic writes for persisted state are adjacent but not addressed by this docs PR.
  • Fresh session per scheduled run and self-contained prompts are not directly relevant.
  • File locking to prevent overlap is unrelated to the migration note.

The PR aligns with the operational spirit of both systems by making scheduler state migration explicit, but it does not add runtime guarantees.

Implementation Options

  1. Conservative: merge the docs-only PR as-is after confirming wording and paths are accurate.
  2. Balanced: merge the docs note, then open a follow-up issue to add a runtime warning when $HOME/cronjob.toml exists but $HOME/.openab/cronjob.toml does not.
  3. Ambitious: add automatic migration or backward-compatible discovery for one release window, with clear logs and tests around old/new path behavior.

Comparison Table

Option Speed to ship Complexity Reliability Maintainability User impact Fit for OpenAB right now
Docs-only SOP update High Low Medium High Medium Strong
Docs + runtime warning follow-up Medium Medium High High High Strong
Automatic migration/backward compatibility Lower Higher High Medium High Conditional

Recommendation

Advance the docs-only PR as the immediate fix, because it is low-risk and directly improves upgrade procedure quality. For merge discussion, pair it with a follow-up issue for a scheduler warning when the old path exists. Automatic migration can be considered later, but it should be split from this PR because it changes runtime behavior and needs tests.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pending-screening PR awaiting automated screening

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants